草庐IT

c++ - boost::multiprecision::float128 和 C++11

全部标签

CreateFile 在打开 lsass.exe 时失败

我正在开发一个程序,它收集有关系统上运行的进程的一些统计信息。我有一个代码,它可以检索一些常规信息,例如可执行文件版本、发布者等。在我打开lsass.exe之前,代码对我来说工作正常。当我尝试打开文件进行读取时,CreateFile失败并显示错误ERROR_FILE_NOT_FOUND。代码如下:autoFileHandle=CreateFile(file_to_process.c_str(),//C:\Windows\System32\lsass.exeGENERIC_READ,FILE_SHARE_DELETE|FILE_SHARE_READ|FILE_SHARE_WRITE,NU

c++ - 在 Windows 上使用 CMake 2.8.11 构建自定义 Qt 4.8.3 库时出错

我正在尝试将我的Qt项目从QMake迁移到CMake,但是当我尝试使用MSVC10在Windows7上构建我的库时遇到了一些错误。我的CMakeLists.txt文件如下:cmake_minimum_required(VERSION2.8.11)project(MyLibrary)find_package(Qt4REQUIRED)set(CMAKE_AUTOMOCON)set(QT_USE_QTSCRIPTTRUE)include(${QT_USE_FILE})include_directories(${CMAKE_CURRENT_BINARY_DIR}/include${QT_INC

c - sleep ()功能不起作用?

我在Windows上的Code::Blocks中使用GNUGCC编译器。为什么sleep(seconds)在这里不起作用?我已经使用库尝试过它并且工作正常。谢谢。编辑:“不起作用”是指无法编译。对不起。#include#include#includeintmain(intargc,char*argv[]){char*c=(char*)malloc(sizeof(char)*50);if(--argc>0){printf("POTATO:\n");while(argc>=1){printf("-%s\n",argv[argc]);sleep(10);argc--;}printf("\n"

c - 在窗口中的某些区域绘制矩形导致屏幕闪烁

在我的绘画功能中,我通过在屏幕上绘制黑色矩形来清除屏幕,然后绘制一组水平线和垂直线来显示一些图形。在我的应用程序中,x轴很长。所以我使用水平滚动来允许用户查看x轴上的数据。以下是如上所述绘制背景和线条的部分程序。caseWM_PAINT:HRGNhrgnUpdate=CreateRectRgn(0,0,0,0);PAINTSTRUCTps;if(GetUpdateRgn(m_hWnd,hrgnUpdate,FALSE)!=NULLREGION){if(BeginPaint(m_hWnd,&ps)){HBRUSHhBr;hBr=CreateSolidBrush(RGB(0,0,0));R

c - 从 C 中的 Windows 内核驱动程序读取注册表

我需要从注册表(最好)或文件中读取设置。该驱动程序是一个内核驱动程序,设置为启动类型设置为SYSTEM,因此所有服务和WinAPI不一定都可用。我正在尝试使用RtlQueryRegistryValues函数以便从注册表中读取单个String值,但无论我做什么,我似乎都得到相同的0xC0000034转换为STATUS_OBJECT_NAME_NOT_FOUND的错误代码.根据MSDN上提供的文档STATUS_OBJECT_NAME_NOT_FOUND从RtlQueryRegistryValues返回当路径参数与有效键不匹配时,或者设置了特定标志并且不满足特定于该标志的条件时。据我所知,注

c - Windows逆向工程: find a specific Windows structure

我正在使用Windbg在Windows(x64)内核上做一些反向操作。我尝试确定由以下字节表示的结构:0e00100000000000-90dbfedb12000000我认为:90dbfedb12000000是一个指向字符串的指针kd>d12dbfedb9000000012`dcec721063006f0075006e-0074007200790000c.o.u.n.t.r.y.0e00是字符串的大小1000是带有终止空字节的字符串的大小所以我认为原始结构如下所示:typedefstruct_SSTR{WORDwStringLen;WORDwStringWithNullCharLen;

c++ - 如果路径包含符号链接(symbolic link),Windows API 获取文件属性?

我使用了_stat64(constchar*path,struct__stat64*buffer);API来获取文件/目录统计信息,但如果输入路径包含符号链接(symboliclink),则此API会失败。如果文件路径包含符号链接(symboliclink),GetFileAttributes()和GetFileAttributesEx()API也会失败。但正如MSDN中所述,如果路径指向一个符号链接(symboliclink),这两个函数返回符号链接(symboliclink)的属性。如果路径指向符号链接(symboliclink),甚至_stat64()也能工作。如果路径包含[no

带 float 的 Windows ASM printf

我一直试图在汇编程序中与Windows中的标准C库进行交互,但遇到了麻烦。出于某种原因,我无法让printf接受浮点变量,所以这里出了点问题。这是我能创建的最短的演示问题的程序。我已经包含了解释我对应该发生的事情的理解的评论。谢谢;;Hello64.asm;Asimpleprogramtoprintafloatingpointnumberinwindows;;assemble:nasmfloat64.asm-fwin64;link:golink/console/entrymainfloat64.objMSVCRT.dll;;tellassemblertogenerate64-bitco

c++ - 为 boost::locale::conv 中的函数获取用户的代码页名称

手头的任务我在Windows上从UTF-8编码的XML解析文件名。我需要将该文件名传递给一个我无法更改的函数。在内部它使用_fsopen()不支持Unicode字符串。当前方法我目前的方法是将文件名转换为用户的字符集,希望文件名可以用该编码表示。然后我使用boost::locale::conv::from_utf()从UTF-8转换,我使用boost::locale::util::get_system_locale()获取当前语言环境的名称。生活美好吗?我在德语系统上使用代码页Windows-1252因此get_system_locale()正确地产生了de_DE.windows-12

c - C 中的 ISO 8601 周数

我正在尝试使用C获取ISO8601周数。我的PC上安装了MinGW。GCC版本是5.3.0。你可以在下面看到我的代码。strftime不适用于说明符“%V”。但它适用于说明符“%W”。但这不是我想要的。我需要ISO8601格式的年份周数。我已经用2个不同的在线C编译器测试了我的代码,它们都运行良好。我怀疑我电脑上的编译器没有配置好。谁能告诉我我做错了什么?任何帮助将不胜感激。这是我的代码:#include#include#includeintmain(){time_ttimep;structtm*time_inf;charbuff[80];time(&timep);time_inf=l